#include"list.h"
#include"Element_data.h"
#include"login.h"
#include"func.h"
#include"file.h"
//主函数
//声明一个顺序表list,并用指针L指向该顺序表
sq_list list;
sq_list *L = &list;//指针L指向list的首地址
int main(int argc, char const *argv[])
{   
    //  随机生成用户信息
    //  creat_stu(L);
    int slect;
    printf("1-已有账号登录\t0-立即注册\n");
    scanf("%d", &slect);
    if (slect)
        login(L);
    else
    {
        add_user(L, L->data[Line_Num]);
        puts("");
    }
    //以下用于测试
    // use_users(L,file_path);
    // printf("Line_Num=%d\n", Line_Num);
    // add_user(L, L->data[Line_Num]);
    // modifi_user(L);
    // add_user(L, class_02[L->len]);
    // modifi_user(L,"唐三");
    // tail_del_list(L);
    // byname_delete(L);
    // printf_Sql_List(L);
    // add_user(L, L->data[Line_Num]);
    // find_by_name(L, "曹操");
    // Clear_Sql_List(L);
    return 0;
}

// 定义菜单栏
void menu()
{
    system("clear");
    int flag = 1;
    while (flag)
    {
        int slect1; // 用户选择标记数
        puts("*****************欢迎登录系统********************");
        puts("****************请选择你的操作*******************");
        puts("******          1.输出学生信息              *****");
        puts("******          2.添加学生信息              *****");
        puts("******          3.删除学生信息              *****");
        puts("******          4.修改学生信息              *****");
        puts("******          5.查看学生信息              *****");
        puts("******          6.删除表尾元素              *****");
        puts("******          7.清空学生信息              *****");
        puts("******          8.学生成绩排名              *****");
        puts("******          9.好玩的小游戏              *****");
        puts("******          0.退出当前系统              *****");
        puts("*************************************************");

        puts("请选择你的操作:");
        scanf("%d", &slect1);
        // 输入对应的数字跳转到对应的函数功能
        switch (slect1)
        {
        case 1:
            // 输出学生信息表
            printf_Sql_List(L);
            IS_continue();
            break;
        case 2:
            // 添加学生信息
            add_user(L, L->data[Line_Num]);
            IS_continue();
            break;
        case 3:
            // 通过名字查找删除某个学生信息
            byname_delete(L);
            IS_continue();
            break;
        case 4:
            // 修改某个学生信息
            modifi_user(L);
            // 覆盖写入到本地文件
            // save_users(L, file_path, "w+", Line_Num);
            IS_continue();
            break;
        case 5:
            // login(L);
            // 查看学生信息
            find_by_name(L, "曹操");
            IS_continue();
            break;
        case 6:
            // 删除表尾元素
            tail_del_list(L);
            IS_continue();
            break;
        case 7:
            // 清空学生信息
            Clear_Sql_List(L);
            IS_continue();
            break;
        case 8:
            // 学生成绩排序排等级
            level_grade(L);
            rank_grade(L);
            IS_continue();
            break;
        case 9:
            // 好玩的小游戏
            select_game();
            IS_continue();
            break;
        case 0:
            printf("你已成功退出系统!\n");
            exit(1);
        }
    }
}